Implicit Representation of Molecular Surfaces

Matúš Talčík

Italian Trulli
Italian Trulli

Introduction

This is an implementation of paper Implicit Representation of Molecular Surfaces for Visualization 2 course at TU Wien. This version is implemented in Rust programming language and WebGPU API. Compared to the original implementation, this one will run on any hardware that supports either Vulkan or DX12.

Interface

To run the application, you just need to click on the molecules.exe. It might happen that you do not have installed redistributable libraries for Windows. In that case, an installer is provided as VC_redist.x64.exe. A default test scene consisting of 3 atoms will show up. You can drag and drop any .pdb file to the window to view It.

On the left side of the application, you can tweak different parameters. Aside from solvent radius, the parameters adjust balance between smoothness of movement, rendering speed and quality of the rendering.

Controls

Data Sets

The files containing molecules are described in the .pdb format. You can find many of them at Protein Data Bank

Some of the molecules are downloaded for you in the pdb folder.

Building

In order to build the project you need a C++ compiler and a Rust compiler with cargo tool. The easiest way to obtain the latter is through rustup. Just download the installer and run it.

To build the code, navigate to the directory of the project and run command: cargo build To directly launch the program (including the compilation) run command: cargo run In both cases you can append --release flag to build/run the optimized version of the program.

Links: